package com.data.JVM.chapter08;

/**
 * 动态分派的典型应用：
 *    重载
 *
 *    测试重载方法匹配的优先级
 *
 *    char-->int-->long-->Character-->Serializable-->Object-->变长参数char...
 *    基本数据类型========>自动装箱====>装箱实现的接口或者父类====>变长参数
 */
public class StaticDispatcher_overload {

//    public static void sayHello(Object object){
//        System.out.println("Object");
//    }
//    public static void sayHello(int  object){
//        System.out.println("int");
//    }
//    public static void sayHello(long object){
//        System.out.println("long");
//    }
//    public static void sayHello(Character object){
//        System.out.println("Character");
//
//    }
//    public static void sayHello(char object){
//        System.out.println("char");
//    }
    public static void sayHello(char... arg ){
        System.out.println("变长参数char...");
    }
//    public static void sayHello(Serializable object){
//        System.out.println("Serializable");
//    }


    public static void main(String[] args) {
        /**
         * 自动匹配合适的重载方法
         */
        sayHello('a');
    }
}
